#ifndef WIDGET_H
#define WIDGET_H

#include "taskworker.h"
#include <QThread>
#include <QWidget>

QT_BEGIN_NAMESPACE
namespace Ui {
class Widget;
}
QT_END_NAMESPACE

class Widget : public QWidget {
  Q_OBJECT

public:
  Widget(QWidget *parent = nullptr);
  ~Widget();

private slots:
  void on_btnConnect_clicked();
  void showMessage(const QString &info, bool conn);
  void on_btnSend_clicked();

signals:
  void onConnect(const QString &ip, quint16 port); // 连接
  void onSend(const QByteArray &arr);              // 发送
  void onClose();                                  // 关闭套接字

private:
  Ui::Widget *ui;
  TaskWorker m_taskWorker;
  QThread m_thread;
  bool m_connected = false;
};
#endif // MAINWINDOW_H
